package com.chanyachting.emall.service;

import java.util.List;

import com.chanyachting.emall.domain.Channel;




/****
 * 频道功能接口 
 * @author robert
 *
 */
public interface ChannelService {
	
	public boolean createChannel(Channel channel);
	
	//查询一个频道对象
	public Channel getOneChannel(Channel channel);
	
	//更新频道对象
	public boolean updateChannel(Channel channel);
	
	//商户频道对象
	public boolean deleteChannel(Channel channel);
	
	
	//查询所有频道对象
	public List<Channel> getAllChannel();
	
	
	//查询所有已公开频道对象
	public List<Channel> getAllPublishChannel();
	
	
	//查询所有未公开频道对象
	public List<Channel> getAllNoPublishChannel();
	
	
	//查询指定频道的所有子频道列表
	public List<Channel> getSubChannel(Channel channel);
	
	
	//查询指定频道的父频道对象
	public Channel getParentChannel(Channel channel);
	
	
	//查询指定频道所有已公开的子频道列表
	public List<Channel> getPublishSubChannel(Channel channel);
	
	
	//修改频道状态为公开
	public boolean publishChannel(Channel channel);
	
	
	//修改频道状态为不公开
	public boolean delPublshChannel(Channel channel);
	
	//修改指定频道优先级
	public boolean upateChannelPri(Channel channel);
	
	public List<Channel> getAllPrimaryChannel();
	
	public List<Channel> getAllParentChannel();
	
	public List<Channel> getAllPrimaryChannelByType(String type);

	public List<Channel> getAllPublicChannel();
}
